package xyz.xmh.pattern.behavioral.nullobjectpattern;

/**
 * @author Administrator
 * <p>
 * 创建顾客的工厂类
 */
public class CustomerFactory {

    private static final String[] NAMES = {"Rob", "Joe", "Julie"};


    /**
     * 根据传入的姓名判断是否存在，如果不存在就创建空顾客
     *
     * @param name 姓名
     * @return 顾客对象
     */
    public static AbstractCustomer getCustomer(String name) {
        for (String s : NAMES) {
            if (s.equalsIgnoreCase(name)) {
                return new RealCustomer(name);
            }
        }
        return new NullCustomer();
    }

}
